Structured data documents such as HTML (Hyper Text Markup Language), XML (extensible Markup Language) and SGML (Standard Generalized Markup Language) documents and derivatives use tags to describe the data associated with the tags. This has an advantage over databases in that not all the fields are required to be predefined. XML is presently finding widespread interest for exchanging information between businesses. XML appears to provide an excellent solution for internet business to business applications. Unfortunately, XML documents require a lot of memory and bandwidth to store and transmit efficiently.
Thus there exists a need for a method of operating a hierarchical data document system having a duplicate tree structure that reduces the memory and bandwidth requirements associated with using these documents.